import router from './router'
import store from './store'
import NProgress from 'nprogress' // 进度条
import 'nprogress/nprogress.css' // 进度条样式

const whiteList = ['/login', '/404'] // 不重定向白名单

router.beforeEach((to, from, next) => {
  NProgress.start() // 开启进度条
  if (store.getters.token) { // 判断是否有token
    if (to.path === '/login') {
      next('/')
      NProgress.done() // 如果当前页面是仪表盘，则不会触发beforeEach钩子，所以手动处理它
    } else {
      next()
    }
  } else {
    if (whiteList.includes(to.path)) { // 在免登录白名单，直接进入
      next()
    } else {
      next('/login') // 否则全部重定向到登录页
      NProgress.done() // 手动处理
    }
  }
})

router.afterEach(() => {
  NProgress.done()
})
